# 定义一个简单的函数，用于打印问候语
def hi():
    print('hi')


# 定义一个Person类，初始化时没有给定name属性的值
class Person:
    name = None

    def ok(self):
        pass


# 创建两个Person类的实例
p = Person()
p2 = Person()
"""
    1.动态的给p对象添加方法m1，注意只是针对p对象添加方法
    2. m1是你新增加的方法的名称，由程序员指定名字
    3.即m1方法和函数hi关联起来，当调用m1方法时，会执行hi函数
"""
# 动态地给p对象添加一个名为m1的方法，该方法与hi函数关联
# 这样做的目的是为了演示如何在对象实例中动态添加行为
# 注意：这种方法只针对p对象有效，p2对象不会受到影响
p.m1 = hi

# 调用新添加的方法m1，会执行hi函数并打印出问候语
p.m1()

print(type(p.ok()))